package com.bluemoon.model.test.dbImort.visitor;

import com.bluemoon.model.test.dbImort.visitor.file.*;
import com.bluemoon.model.test.dbImort.visitor.po.ExtractResultSet;

/**
 * 定义管理所有文件类型转为txt的访问者
 * @author Jarod.Kong
 * @date 2021/1/13 11:54
 */
public interface ExtractVisitor<T>{
    default  <T> ExtractResultSet<T> visitor(TextFile textFile) {
        return ExtractResultSet.empty();
    }

    default  <T> ExtractResultSet<T> visitor(PdfFile pdfFile) {
        return ExtractResultSet.empty();
    }

    default  <T> ExtractResultSet<T> visitor(WordFile wordFile) {
        return ExtractResultSet.empty();
    }

    default  <T> ExtractResultSet<T> visitor(PPTFile pptFile) {
        return ExtractResultSet.empty();
    }

    default <T> ExtractResultSet<T> visitor(ExcelFile excelFile){
        return ExtractResultSet.empty();
    }
}
